// 使用class关键字来定义一个类
// 主要包含两个部分：属性、方法
class Person{
    // 定义属性
    // 实例属性
    name:string='孙悟空';
    age:number=18;
    // 静态属性
    static sex:string='男';
    // 只读属性
    readonly id:number=1;
    // 定义方法
    // 实例方法
    sayHello(){
        console.log('Hello,我是孙悟空');
    }
    // 静态方法
    static sayHello(){
        console.log('Hello,我是孙悟空');
    }
}

const per=new Person();
console.log(per.name); // 实例属性，需要通过实例对象来访问
// 修改实例属性
per.name='猪八戒';
console.log(per.name);
// 修改静态属性
Person.sex='女';
console.log(Person.sex); // 静态属性，需要通过类来访问

// 修改只读属性
// per.id=2; // 报错 因为id是只读属性，不能修改
// console.log(per.id);

// 调用实例方法
per.sayHello();
// 调用静态方法
Person.sayHello();